package com.gopay.common.domain.cps.vo;

import java.math.BigDecimal;
import java.util.Date;

import com.gopay.common.domain.BaseEntity;

/**
 * 核心处理中心 通用产品交易 主订单表属性
 * 
 * @CpsGenOrder.java
 * @author liujy
 * @2013-1-14 下午5:06:32 www.gopay.com.cn Inc.All rights reserved.
 */
public abstract class CpsGenOrder extends BaseEntity {

    /**
     * 
     */
    private static final long serialVersionUID = -2628549172020690022L;

    // 主表属性
    private String gopayOrderId;
    private int transDtlSq;
    private String gopayIntTxnCd;
    private String merId;
    private String merOrderId;
    private Date merTxnTm;
    private String gatewaySource;
    private String gatewayChannel;
    private String orderType;
    private String payChannel;
    private Date gopayTxnTm;
    private String relevanceGopayOrderId;
    private BigDecimal totalOrderAmt;
    private BigDecimal totalOrderFeeAmt;
    private BigDecimal orderDealAmt;
    private BigDecimal orderRealFeeAmt;
    private String orderFeePayer;
    private String curType;
    private String mainRecvAcct;
    private String mainRecvAcctProdCode;
    private String mainRecvAcctProdName;
    private String mainRecvCustId;
    private String payAcct;
    private String mainPayAcctProdCode;
    private String mainPayAcctProdName;
    private String payCustId;
    private int txnStaCd;
    private String outStlmId;
    private String outPayAcct;
    private Date tranFinishTime;
    private Date orderStlmTime;
    private String lastUpdTrancode;
    private String remark1;
    private String remark2;
    private BigDecimal merTxnAmt;
    private String accountPoint;
    private Date mainCreatedTs;
    private Date mainLastUpdTs;
    private String userId;
    private Integer reversalFlag = new Integer(100);
    private String childTranType;
    /** 云账户增加佣金(使用主订单表提留金字段)  金额  **/
    private BigDecimal merCommAmt;
    /** 云账户增加佣金(使用主订单表提留金字段)  承担方：默认付款方 **/
    private String merCommPayer;

    //旺pos新增字段 add by liyang 20171026 start
    private String remark3;
    //liyang end


    
    /**
     * 结算金额  ZZG  如果不清楚请联系ZZG,LZ了解，请勿随便塞值
     * 如果是付款方承担手续费 并且 订单与银行有关
     * 
     *	 结算统计金额：
		收款类：网银，快捷承担方为付款方：(主要是充值和网关支付)
		结算统计金额=商户交易金额+手续费
		付款类：（付款到银行和提现属于此类）
		结算统计金额=商户交易金额
     * 
     * 
     */
    private BigDecimal settleAmt;

    //--------------生产优化12期 lx 2017-11-21 13:40:51 解决重复支付订单错误提示被覆盖问题 start-------------------------------
    private String errCode;
    private String errMsg;

    private String otherAcct;

    public String getOtherAcct() {
        return otherAcct;
    }

    public void setOtherAcct(String otherAcct) {
        this.otherAcct = otherAcct;
    }

    public String getErrCode() {
        return errCode;
    }

    public void setErrCode(String errCode) {
        this.errCode = errCode;
    }

    public String getErrMsg() {
        return errMsg;
    }

    public void setErrMsg(String errMsg) {
        this.errMsg = errMsg;
    }
    //--------------生产优化12期 lx 2017-11-21 13:40:51 解决重复支付订单错误提示被覆盖问题 end-------------------------------

    public Integer getReversalFlag() {
        return reversalFlag;
    }

    public void setReversalFlag(Integer reversalFlag) {
        this.reversalFlag = reversalFlag;
    }

    public String getAccountPoint() {
        return accountPoint;
    }

    public void setAccountPoint(String accountPoint) {
        this.accountPoint = accountPoint;
    }

    public BigDecimal getMerTxnAmt() {
        return merTxnAmt;
    }

    public void setMerTxnAmt(BigDecimal merTxnAmt) {
        this.merTxnAmt = merTxnAmt;
    }

    public String getGopayOrderId() {
        return gopayOrderId;
    }

    public void setGopayOrderId(String gopayOrderId) {
        this.gopayOrderId = gopayOrderId;
    }

    public int getTransDtlSq() {
        return transDtlSq;
    }

    public void setTransDtlSq(int transDtlSq) {
        this.transDtlSq = transDtlSq;
    }

    public String getGopayIntTxnCd() {
        return gopayIntTxnCd;
    }

    public void setGopayIntTxnCd(String gopayIntTxnCd) {
        this.gopayIntTxnCd = gopayIntTxnCd;
    }

    public String getMerId() {
        return merId;
    }

    public void setMerId(String merId) {
        this.merId = merId;
    }

    public String getMerOrderId() {
        return merOrderId;
    }

    public void setMerOrderId(String merOrderId) {
        this.merOrderId = merOrderId;
    }

    public Date getMerTxnTm() {
        return merTxnTm;
    }

    public void setMerTxnTm(Date merTxnTm) {
        this.merTxnTm = merTxnTm;
    }

    public String getGatewaySource() {
        return gatewaySource;
    }

    public void setGatewaySource(String gatewaySource) {
        this.gatewaySource = gatewaySource;
    }

    public String getGatewayChannel() {
        return gatewayChannel;
    }

    public void setGatewayChannel(String gatewayChannel) {
        this.gatewayChannel = gatewayChannel;
    }

    public String getOrderType() {
        return orderType;
    }

    public void setOrderType(String orderType) {
        this.orderType = orderType;
    }

    public String getPayChannel() {
        return payChannel;
    }

    public void setPayChannel(String payChannel) {
        this.payChannel = payChannel;
    }

    public Date getGopayTxnTm() {
        return gopayTxnTm;
    }

    public void setGopayTxnTm(Date gopayTxnTm) {
        this.gopayTxnTm = gopayTxnTm;
    }

    public String getRelevanceGopayOrderId() {
        return relevanceGopayOrderId;
    }

    public void setRelevanceGopayOrderId(String relevanceGopayOrderId) {
        this.relevanceGopayOrderId = relevanceGopayOrderId;
    }

    public BigDecimal getTotalOrderAmt() {
        return totalOrderAmt;
    }

    public void setTotalOrderAmt(BigDecimal totalOrderAmt) {
        this.totalOrderAmt = totalOrderAmt;
    }

    public BigDecimal getTotalOrderFeeAmt() {
        return totalOrderFeeAmt;
    }

    public void setTotalOrderFeeAmt(BigDecimal totalOrderFeeAmt) {
        this.totalOrderFeeAmt = totalOrderFeeAmt;
    }

    public BigDecimal getOrderDealAmt() {
        return orderDealAmt;
    }

    public void setOrderDealAmt(BigDecimal orderDealAmt) {
        this.orderDealAmt = orderDealAmt;
    }

    public BigDecimal getOrderRealFeeAmt() {
        return orderRealFeeAmt;
    }

    public void setOrderRealFeeAmt(BigDecimal orderRealFeeAmt) {
        this.orderRealFeeAmt = orderRealFeeAmt;
    }

    public String getOrderFeePayer() {
        return orderFeePayer;
    }

    public void setOrderFeePayer(String orderFeePayer) {
        this.orderFeePayer = orderFeePayer;
    }

    public String getCurType() {
        return curType;
    }

    public void setCurType(String curType) {
        this.curType = curType;
    }

    public String getMainRecvAcct() {
        return mainRecvAcct;
    }

    public void setMainRecvAcct(String mainRecvAcct) {
        this.mainRecvAcct = mainRecvAcct;
    }

    public String getMainRecvAcctProdCode() {
        return mainRecvAcctProdCode;
    }

    public void setMainRecvAcctProdCode(String mainRecvAcctProdCode) {
        this.mainRecvAcctProdCode = mainRecvAcctProdCode;
    }

    public String getMainRecvAcctProdName() {
        return mainRecvAcctProdName;
    }

    public void setMainRecvAcctProdName(String mainRecvAcctProdName) {
        this.mainRecvAcctProdName = mainRecvAcctProdName;
    }

    public String getMainRecvCustId() {
        return mainRecvCustId;
    }

    public void setMainRecvCustId(String mainRecvCustId) {
        this.mainRecvCustId = mainRecvCustId;
    }

    public String getPayAcct() {
        return payAcct;
    }

    public void setPayAcct(String payAcct) {
        this.payAcct = payAcct;
    }

    public String getMainPayAcctProdCode() {
        return mainPayAcctProdCode;
    }

    public void setMainPayAcctProdCode(String mainPayAcctProdCode) {
        this.mainPayAcctProdCode = mainPayAcctProdCode;
    }

    public String getMainPayAcctProdName() {
        return mainPayAcctProdName;
    }

    public void setMainPayAcctProdName(String mainPayAcctProdName) {
        this.mainPayAcctProdName = mainPayAcctProdName;
    }

    public String getPayCustId() {
        return payCustId;
    }

    public void setPayCustId(String payCustId) {
        this.payCustId = payCustId;
    }

    public int getTxnStaCd() {
        return txnStaCd;
    }

    public void setTxnStaCd(int txnStaCd) {
        this.txnStaCd = txnStaCd;
    }

    public String getOutStlmId() {
        return outStlmId;
    }

    public void setOutStlmId(String outStlmId) {
        this.outStlmId = outStlmId;
    }

    public String getOutPayAcct() {
        return outPayAcct;
    }

    public void setOutPayAcct(String outPayAcct) {
        this.outPayAcct = outPayAcct;
    }

    public Date getTranFinishTime() {
        return tranFinishTime;
    }

    public void setTranFinishTime(Date tranFinishTime) {
        this.tranFinishTime = tranFinishTime;
    }

    public Date getOrderStlmTime() {
        return orderStlmTime;
    }

    public void setOrderStlmTime(Date orderStlmTime) {
        this.orderStlmTime = orderStlmTime;
    }

    public String getLastUpdTrancode() {
        return lastUpdTrancode;
    }

    public void setLastUpdTrancode(String lastUpdTrancode) {
        this.lastUpdTrancode = lastUpdTrancode;
    }

    public String getRemark1() {
        return remark1;
    }

    public void setRemark1(String remark1) {
        this.remark1 = remark1;
    }

    public String getRemark2() {
        return remark2;
    }

    public void setRemark2(String remark2) {
        this.remark2 = remark2;
    }

    public void setMainCreatedTs(Date mainCreatedTs) {
        this.mainCreatedTs = mainCreatedTs;
    }

    public Date getMainCreatedTs() {
        return mainCreatedTs;
    }

    public void setMainLastUpdTs(Date mainLastUpdTs) {
        this.mainLastUpdTs = mainLastUpdTs;
    }

    public Date getMainLastUpdTs() {
        return mainLastUpdTs;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }


	public String getChildTranType() {
		return childTranType;
	}

	public void setChildTranType(String childTranType) {
		this.childTranType = childTranType;
	}

	public BigDecimal getMerCommAmt() {
		return merCommAmt;
	}

	public void setMerCommAmt(BigDecimal merCommAmt) {
		this.merCommAmt = merCommAmt;
	}

	public String getMerCommPayer() {
		return merCommPayer;
	}

	public void setMerCommPayer(String merCommPayer) {
		this.merCommPayer = merCommPayer;
	}

	public BigDecimal getSettleAmt() {
		return settleAmt;
	}

	public void setSettleAmt(BigDecimal settleAmt) {
		this.settleAmt = settleAmt;
	}

    public String getRemark3() {
        return remark3;
    }

    public void setRemark3(String remark3) {
        this.remark3 = remark3;
    }
}
